namespace $safeprojectname$.ViewModels
{
    /// <summary>
    /// Specifies the state a view model can be based on the operation it is performing.
    /// </summary>
    public enum ViewModelMode
    {
        /// <summary>
        /// Default mode for view models that do not need a specific state for the operation.
        /// </summary>
        Default,
        /// <summary>
        /// The view model is in create state indicating to the view how to display the controls when new data needs to be created.
        /// </summary>
        Create,
        /// <summary>
        /// The view model is in edit state indicating to the view how to display the controls when exisiting data needs to be edited.
        /// </summary>
        Edit,
        /// <summary>
        /// The view model is in delete state indicating to the view how to display the controls when new data needs to be deleted.
        /// </summary>
        Delete
    }
}